import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;
import java.text.SimpleDateFormat;



public class DateDemo {
    public static void main(String[] args) {
//        Date date = new Date(0L);//获取起始时间
//        Date date2 = new Date();//获取当前时间
//        System.out.println(date);
//        System.out.println(date2);

//        SimpleDateFormat类
//        指定输入设置SimpleDateFormat的格式
//        类似于momentjs的时间格式操作库 java封装
//        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss EE");
//        Date date = new Date();
//        System.out.println(sdf.format(date));


//        String dateStr = "2023-11-06 14:20:00";
//        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//        try {
//            Date date = sdf.parse(dateStr);
//            System.out.println(date);
//        } catch (ParseException e) {
//            e.printStackTrace();
//        }

//        String strDate="2000-01-15";
//        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
//        SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy年MM月dd日");
//        try {
//            Date date = sdf.parse(strDate);
//            date.getTime();
//            System.out.println(sdf2.format(date));
//        } catch (ParseException e) {
//            e.printStackTrace();
//        }

//        Calendar类
//        日历类 提供了操作日期的方法
//        可以单独修改、获取时间中的 年、月、日
//        Calender是个抽象类 不能直接实例化
//        可以通过Calendar.getInstance()方法获取实例

//        获取到日历对象
//        根据系统不同的时区来获取不同的日历对象
        Calendar calendar = Calendar.getInstance();
//        System.out.println(calendar);
//        月份范围 0-11
//        修改一下日历代表的时间
        Date d=new Date(0L);
        calendar.setTime(d);
//        System.out.println(calendar);

//        设置日历年份
//        calendar.set(Calendar.YEAR, 2030);

//        设置日历月份
        calendar.set(Calendar.MONTH, 8);

//        设置日历日期
//        calendar.set(Calendar.DAY_OF_MONTH, 30);

//        增加一个月
        calendar.add(Calendar.MONTH, 1);

        int year = calendar.get(1);
        System.out.println(year);
        int month = calendar.get(2)+1;
        System.out.println(month);
        int day = calendar.get(5);
        System.out.println(day);
//        一周中的第几天
        int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
//        细节 格林威治时间中 周日是1 周一是2 周二是3 周三是4 周四是5 周五是6 周六是7
        System.out.println(dayOfWeek);
    }
}
